home *** CD-ROM | disk | FTP | other *** search
/ Tux Racer / Tux Racer.iso / program files / Sunspire Studios / Tux Racer / characters / tux / sg.tcl < prev    next >
Encoding:
Text File  |  2001-09-08  |  25.3 KB  |  165 lines

  1. objcreate {s_sgnode} {sg} \
  2.     {-position} {0.0 0.330000013113 0.0} \
  3.     {-use_fixed_drawable_bv} {1} \
  4.     {-check_child_visibility} {0} \
  5.     {-draw_reflection} {1}
  6.  
  7. objcreate {s_sganim} {sg:tuxroot} \
  8.     {-bound_animations} {{( anim:crashing:tuxroot-rotateZ , z_rotation , 0 )} {( anim:trick_left:tuxroot-rotateY , y_rotation , 0 )} {( anim:trick_right:tuxroot-rotateY , y_rotation , 0 )} {( anim:trick_front:tuxroot-rotateX , x_rotation , 0 )} {( anim:trick_back:tuxroot-rotateX , x_rotation , 0 )} {( anim:left_turn:tuxroot-rotateY , y_radians , 0 )} {( anim:right_turn:tuxroot-rotateY , y_radians , 0 )} {( anim:flap:tuxroot-translateZ , z_translation , 0 )} {( anim:flap:tuxroot-rotateX , x_radians , 0 )} {( anim:flap_trans:tuxroot-rotateX , x_radians , 0 )} {( anim:paddle:tuxroot-translateY , y_translation , 0 )} {( anim:paddle:tuxroot-translateZ , z_translation , 0 )} {( anim:paddle:tuxroot-rotateX , x_radians , 0 )} {( anim:jump:tuxroot-translateY , y_translation , 0 )} {( anim:jump:tuxroot-translateZ , z_translation , 0 )} {( anim:jump:tuxroot-rotateX , x_radians , 0 )} {( anim:intro:tuxroot-translateY , y_translation , 1 )} {( anim:intro:tuxroot-translateZ , z_translation , 1 )} {( anim:intro:tuxroot-rotateX , x_radians , 1 )} {( anim:intro:tuxroot-rotateY , y_radians , 1 )} {( anim:intro:tuxroot-rotateZ , z_radians , 1 )} {( anim:end_win:tuxroot-translateX , x_translation , 1 )} {( anim:end_win:tuxroot-translateY , y_translation , 1 )} {( anim:end_win:tuxroot-translateZ , z_translation , 1 )} {( anim:end_win:tuxroot-rotateX , x_radians , 1 )} {( anim:end_win:tuxroot-rotateY , y_radians , 1 )} {( anim:end_win:tuxroot-rotateZ , z_radians , 1 )} {( anim:end_lose:tuxroot-translateX , x_translation , 1 )} {( anim:end_lose:tuxroot-translateY , y_translation , 1 )} {( anim:end_lose:tuxroot-translateZ , z_translation , 1 )} {( anim:end_lose:tuxroot-rotateX , x_radians , 1 )} {( anim:end_lose:tuxroot-rotateY , y_radians , 1 )} {( anim:end_lose:tuxroot-rotateZ , z_radians , 1 )}} \
  9.     {-object3d} {objects:sphere} \
  10.     {-collisions_enabled} {0}
  11.  
  12. objcreate {s_sganim} {sg:tuxroot:chest} \
  13.     {-bound_animations} {{( anim:left_turn:chest-rotateZ , z_radians , 0 )} {( anim:right_turn:chest-rotateZ , z_radians , 0 )} {( anim:brake:chest-rotateX , x_radians , 0 )} {( anim:flap:chest-rotateX , x_radians , 0 )} {( anim:flap_trans:chest-rotateX , x_radians , 0 )} {( anim:paddle:chest-rotateX , x_radians , 0 )} {( anim:velocity:chest-rotateX , x_radians , 0 )} {( anim:force:chest-rotateX , x_radians , 0 )} {( anim:racing:chest-rotateX , x_radians , 0 )} {( anim:jump:chest-rotateX , x_radians , 0 )} {( anim:intro:chest-rotateX , x_radians , 1 )} {( anim:intro:chest-rotateY , y_radians , 1 )} {( anim:intro:chest-rotateZ , z_radians , 1 )} {( anim:end_lose:chest-rotateX , x_radians , 1 )} {( anim:end_lose:chest-rotateY , y_radians , 1 )} {( anim:end_lose:chest-rotateZ , z_radians , 1 )}} \
  14.     {-position} {0.0 0.125 0.0}
  15.  
  16. objcreate {s_sganim} {sg:tuxroot:chest:neck} \
  17.     {-bound_animations} {{( anim:left_turn:neck-rotateZ , z_radians , 0 )} {( anim:right_turn:neck-rotateZ , z_radians , 0 )} {( anim:brake:neck-rotateX , x_radians , 0 )} {( anim:flap:neck-rotateX , x_radians , 0 )} {( anim:flap_trans:neck-rotateX , x_radians , 0 )} {( anim:paddle:neck-rotateX , x_radians , 0 )} {( anim:velocity:neck-rotateX , x_radians , 0 )} {( anim:force:neck-rotateX , x_radians , 0 )} {( anim:racing:neck-rotateX , x_radians , 0 )} {( anim:jump:neck-rotateX , x_radians , 0 )} {( anim:intro:neck-rotateX , x_radians , 1 )} {( anim:intro:neck-rotateY , y_radians , 1 )} {( anim:intro:neck-rotateZ , z_radians , 1 )} {( anim:end_lose:neck-rotateX , x_radians , 1 )} {( anim:end_lose:neck-rotateY , y_radians , 1 )} {( anim:end_lose:neck-rotateZ , z_radians , 1 )}} \
  18.     {-position} {0.0 0.127000004053 0.00300000002608}
  19.  
  20. objcreate {s_sganim} {sg:tuxroot:chest:neck:head} \
  21.     {-bound_animations} {{( anim:left_turn:head-rotateZ , z_radians , 0 )} {( anim:right_turn:head-rotateZ , z_radians , 0 )} {( anim:brake:head-rotateX , x_radians , 0 )} {( anim:flap:head-rotateX , x_radians , 0 )} {( anim:flap_trans:head-rotateX , x_radians , 0 )} {( anim:paddle:head-rotateX , x_radians , 0 )} {( anim:velocity:head-rotateX , x_radians , 0 )} {( anim:force:head-rotateX , x_radians , 0 )} {( anim:racing:head-rotateX , x_radians , 0 )} {( anim:jump:head-rotateX , x_radians , 0 )} {( anim:intro:head-rotateX , x_radians , 1 )} {( anim:intro:head-rotateY , y_radians , 1 )} {( anim:intro:head-rotateZ , z_radians , 1 )} {( anim:end_lose:head-rotateX , x_radians , 1 )} {( anim:end_lose:head-rotateY , y_radians , 1 )} {( anim:end_lose:head-rotateZ , z_radians , 1 )}} \
  22.     {-position} {0.0 0.324999988079 -0.0179999992251}
  23.  
  24. objcreate {s_sganim} {sg:tuxroot:chest:neck:head:beak} \
  25.     {-bound_animations} {{( anim:left_turn:beak-rotateX , x_radians , 0 )} {( anim:right_turn:beak-rotateX , x_radians , 0 )} {( anim:intro:beak-rotateX , x_radians , 1 )} {( anim:intro:beak-rotateY , y_radians , 1 )} {( anim:intro:beak-rotateZ , z_radians , 1 )} {( anim:end_lose:beak-rotateX , x_radians , 1 )} {( anim:end_lose:beak-rotateY , y_radians , 1 )} {( anim:end_lose:beak-rotateZ , z_radians , 1 )}} \
  26.     {-position} {0.0 -0.0900000035763 0.097999997437}
  27.  
  28. objcreate {s_object3dinst} {sg:tuxroot:chest:neck:head:beak:lowerBeak1} \
  29.     {-object3d} {objects:tuxbeak}
  30.  
  31. objcreate {s_object3dinst} {sg:tuxroot:chest:neck:head:head} \
  32.     {-object3d} {objects:tuxhead} \
  33.     {-cast_shadow} {1}
  34.  
  35. objcreate {s_object3dinst} {sg:tuxroot:chest:neck:neck2} \
  36.     {-object3d} {objects:tuxneck} \
  37.     {-cast_shadow} {1}
  38.  
  39. objcreate {s_sganim} {sg:tuxroot:chest:rightCollarbone} \
  40.     {-bound_animations} {{( anim:paddle:rightCollarbone-rotateX , x_radians , 0 )} {( anim:jump:rightCollarbone-rotateX , x_radians , 0 )} {( anim:intro:rightCollarbone-rotateX , x_radians , 1 )} {( anim:intro:rightCollarbone-rotateY , y_radians , 1 )} {( anim:intro:rightCollarbone-rotateZ , z_radians , 1 )} {( anim:end_lose:rightCollarbone-rotateX , x_radians , 1 )} {( anim:end_lose:rightCollarbone-rotateY , y_radians , 1 )} {( anim:end_lose:rightCollarbone-rotateZ , z_radians , 1 )}} \
  41.     {-position} {-0.15000000596 0.144999995828 0.0}
  42.  
  43. objcreate {s_sganim} {sg:tuxroot:chest:rightCollarbone:rightShoulder} \
  44.     {-bound_animations} {{( anim:left_turn:rightShoulder-rotateX , x_radians , 0 )} {( anim:left_turn:rightShoulder-rotateY , y_radians , 0 )} {( anim:right_turn:rightShoulder-rotateX , x_radians , 0 )} {( anim:right_turn:rightShoulder-rotateY , y_radians , 0 )} {( anim:right_turn:rightShoulder-rotateZ , z_radians , 0 )} {( anim:brake:rightShoulder-rotateX , x_radians , 0 )} {( anim:brake:rightShoulder-rotateY , y_radians , 0 )} {( anim:brake:rightShoulder-rotateZ , z_radians , 0 )} {( anim:flap:rightShoulder-rotateX , x_radians , 0 )} {( anim:flap:rightShoulder-rotateY , y_radians , 0 )} {( anim:flap:rightShoulder-rotateZ , z_radians , 0 )} {( anim:flap_trans:rightShoulder-rotateX , x_radians , 0 )} {( anim:flap_trans:rightShoulder-rotateY , y_radians , 0 )} {( anim:flap_trans:rightShoulder-rotateZ , z_radians , 0 )} {( anim:paddle:rightShoulder-rotateX , x_radians , 0 )} {( anim:paddle:rightShoulder-rotateY , y_radians , 0 )} {( anim:paddle:rightShoulder-rotateZ , z_radians , 0 )} {( anim:velocity:rightShoulder-rotateZ , z_radians , 0 )} {( anim:force:rightShoulder-rotateX , x_radians , 0 )} {( anim:racing:rightShoulder-rotateX , x_radians , 0 )} {( anim:jump:rightShoulder-rotateX , x_radians , 0 )} {( anim:jump:rightShoulder-rotateY , y_radians , 0 )} {( anim:jump:rightShoulder-rotateZ , z_radians , 0 )} {( anim:intro:rightShoulder-rotateX , x_radians , 1 )} {( anim:intro:rightShoulder-rotateY , y_radians , 1 )} {( anim:intro:rightShoulder-rotateZ , z_radians , 1 )} {( anim:end_win:rightShoulder-rotateX , x_radians , 1 )} {( anim:end_win:rightShoulder-rotateY , y_radians , 1 )} {( anim:end_win:rightShoulder-rotateZ , z_radians , 1 )} {( anim:end_lose:rightShoulder-rotateX , x_radians , 1 )} {( anim:end_lose:rightShoulder-rotateY , y_radians , 1 )} {( anim:end_lose:rightShoulder-rotateZ , z_radians , 1 )}} \
  45.     {-position} {-0.097999997437 0.0439999997616 0.0}
  46.  
  47. objcreate {s_sganim} {sg:tuxroot:chest:rightCollarbone:rightShoulder:rightElbow} \
  48.     {-bound_animations} {{( anim:left_turn:rightElbow-rotateX , x_radians , 0 )} {( anim:right_turn:rightElbow-rotateX , x_radians , 0 )} {( anim:brake:rightElbow-rotateX , x_radians , 0 )} {( anim:paddle:rightElbow-rotateX , x_radians , 0 )} {( anim:force:rightElbow-rotateX , x_radians , 0 )} {( anim:racing:rightElbow-rotateX , x_radians , 0 )} {( anim:jump:rightElbow-rotateX , x_radians , 0 )} {( anim:intro:rightElbow-rotateX , x_radians , 1 )} {( anim:intro:rightElbow-rotateY , y_radians , 1 )} {( anim:intro:rightElbow-rotateZ , z_radians , 1 )} {( anim:end_win:rightElbow-rotateZ , z_radians , 1 )} {( anim:end_lose:rightElbow-rotateX , x_radians , 1 )}} \
  49.     {-position} {-0.082000002265 -0.16400000453 -0.00800000037998}
  50.  
  51. objcreate {s_object3dinst} {sg:tuxroot:chest:rightCollarbone:rightShoulder:rightElbow:lowerRightArm} \
  52.     {-object3d} {objects:tuxrightarm2} \
  53.     {-cast_shadow} {1}
  54.  
  55. objcreate {s_object3dinst} {sg:tuxroot:chest:rightCollarbone:rightShoulder:upperRightArm} \
  56.     {-object3d} {objects:tuxrightarm1} \
  57.     {-cast_shadow} {1}
  58.  
  59. objcreate {s_object3dinst} {sg:tuxroot:chest:rightCollarbone:rightShoulder2} \
  60.     {-object3d} {objects:tuxrightshoulder} \
  61.     {-cast_shadow} {1}
  62.  
  63. objcreate {s_sganim} {sg:tuxroot:chest:leftCollarbone} \
  64.     {-bound_animations} {{( anim:paddle:leftCollarbone-rotateX , x_radians , 0 )} {( anim:jump:leftCollarbone-rotateX , x_radians , 0 )} {( anim:intro:leftCollarbone-rotateX , x_radians , 1 )} {( anim:intro:leftCollarbone-rotateY , y_radians , 1 )} {( anim:intro:leftCollarbone-rotateZ , z_radians , 1 )} {( anim:end_lose:leftCollarbone-rotateX , x_radians , 1 )} {( anim:end_lose:leftCollarbone-rotateY , y_radians , 1 )} {( anim:end_lose:leftCollarbone-rotateZ , z_radians , 1 )}} \
  65.     {-position} {0.15000000596 0.144999995828 0.0}
  66.  
  67. objcreate {s_sganim} {sg:tuxroot:chest:leftCollarbone:leftShoulder} \
  68.     {-bound_animations} {{( anim:left_turn:leftShoulder-rotateX , x_radians , 0 )} {( anim:left_turn:leftShoulder-rotateY , y_radians , 0 )} {( anim:left_turn:leftShoulder-rotateZ , z_radians , 0 )} {( anim:right_turn:leftShoulder-rotateX , x_radians , 0 )} {( anim:right_turn:leftShoulder-rotateY , y_radians , 0 )} {( anim:brake:leftShoulder-rotateX , x_radians , 0 )} {( anim:brake:leftShoulder-rotateY , y_radians , 0 )} {( anim:brake:leftShoulder-rotateZ , z_radians , 0 )} {( anim:flap:leftShoulder-rotateX , x_radians , 0 )} {( anim:flap:leftShoulder-rotateY , y_radians , 0 )} {( anim:flap:leftShoulder-rotateZ , z_radians , 0 )} {( anim:flap_trans:leftShoulder-rotateX , x_radians , 0 )} {( anim:flap_trans:leftShoulder-rotateY , y_radians , 0 )} {( anim:flap_trans:leftShoulder-rotateZ , z_radians , 0 )} {( anim:paddle:leftShoulder-rotateX , x_radians , 0 )} {( anim:paddle:leftShoulder-rotateY , y_radians , 0 )} {( anim:paddle:leftShoulder-rotateZ , z_radians , 0 )} {( anim:velocity:leftShoulder-rotateZ , z_radians , 0 )} {( anim:force:leftShoulder-rotateX , x_radians , 0 )} {( anim:racing:leftShoulder-rotateX , x_radians , 0 )} {( anim:jump:leftShoulder-rotateX , x_radians , 0 )} {( anim:jump:leftShoulder-rotateY , y_radians , 0 )} {( anim:jump:leftShoulder-rotateZ , z_radians , 0 )} {( anim:intro:leftShoulder-rotateX , x_radians , 1 )} {( anim:intro:leftShoulder-rotateY , y_radians , 1 )} {( anim:intro:leftShoulder-rotateZ , z_radians , 1 )} {( anim:end_win:leftShoulder-rotateX , x_radians , 1 )} {( anim:end_win:leftShoulder-rotateY , y_radians , 1 )} {( anim:end_win:leftShoulder-rotateZ , z_radians , 1 )} {( anim:end_lose:leftShoulder-rotateX , x_radians , 1 )} {( anim:end_lose:leftShoulder-rotateY , y_radians , 1 )} {( anim:end_lose:leftShoulder-rotateZ , z_radians , 1 )}} \
  69.     {-position} {0.097999997437 0.0439999997616 0.0}
  70.  
  71. objcreate {s_sganim} {sg:tuxroot:chest:leftCollarbone:leftShoulder:leftElbow} \
  72.     {-bound_animations} {{( anim:left_turn:leftElbow-rotateX , x_radians , 0 )} {( anim:right_turn:leftElbow-rotateX , x_radians , 0 )} {( anim:brake:leftElbow-rotateX , x_radians , 0 )} {( anim:paddle:leftElbow-rotateX , x_radians , 0 )} {( anim:force:leftElbow-rotateX , x_radians , 0 )} {( anim:racing:leftElbow-rotateX , x_radians , 0 )} {( anim:jump:leftElbow-rotateX , x_radians , 0 )} {( anim:intro:leftElbow-rotateX , x_radians , 1 )} {( anim:intro:leftElbow-rotateY , y_radians , 1 )} {( anim:intro:leftElbow-rotateZ , z_radians , 1 )} {( anim:end_win:leftElbow-rotateZ , z_radians , 1 )}} \
  73.     {-position} {0.082000002265 -0.16400000453 -0.00800000037998}
  74.  
  75. objcreate {s_object3dinst} {sg:tuxroot:chest:leftCollarbone:leftShoulder:leftElbow:lowerLeftArm} \
  76.     {-object3d} {objects:tuxleftarm2} \
  77.     {-cast_shadow} {1}
  78.  
  79. objcreate {s_object3dinst} {sg:tuxroot:chest:leftCollarbone:leftShoulder:upperLeftArm} \
  80.     {-object3d} {objects:tuxleftarm1} \
  81.     {-cast_shadow} {1}
  82.  
  83. objcreate {s_object3dinst} {sg:tuxroot:chest:leftCollarbone:leftShoulder1} \
  84.     {-object3d} {objects:tuxleftshoulder} \
  85.     {-cast_shadow} {1}
  86.  
  87. objcreate {s_object3dinst} {sg:tuxroot:chest:chest2} \
  88.     {-object3d} {objects:tuxchest} \
  89.     {-cast_shadow} {1}
  90.  
  91. objcreate {s_sganim} {sg:tuxroot:tail} \
  92.     {-bound_animations} {{( anim:brake:tail-rotateX , x_radians , 0 )} {( anim:flap:tail-rotateX , x_radians , 0 )} {( anim:flap_trans:tail-rotateX , x_radians , 0 )} {( anim:paddle:tail-rotateX , x_radians , 0 )} {( anim:velocity:tail-rotateX , x_radians , 0 )} {( anim:force:tail-rotateX , x_radians , 0 )} {( anim:racing:tail-rotateX , x_radians , 0 )} {( anim:jump:tail-rotateX , x_radians , 0 )} {( anim:intro:tail-rotateX , x_radians , 1 )} {( anim:intro:tail-rotateY , y_radians , 1 )} {( anim:intro:tail-rotateZ , z_radians , 1 )}} \
  93.     {-position} {0.0 -0.0659999996424 -0.193000003695}
  94.  
  95. objcreate {s_object3dinst} {sg:tuxroot:tail:tail} \
  96.     {-object3d} {objects:tuxtail}
  97.  
  98. objcreate {s_sganim} {sg:tuxroot:rightHip} \
  99.     {-bound_animations} {{( anim:left_turn:rightHip-rotateX , x_radians , 0 )} {( anim:left_turn:rightHip-rotateZ , z_radians , 0 )} {( anim:left_turn:rightHip-rotateY , y_radians , 0 )} {( anim:right_turn:rightHip-rotateX , x_radians , 0 )} {( anim:brake:rightHip-rotateX , x_radians , 0 )} {( anim:brake:rightHip-rotateY , y_radians , 0 )} {( anim:brake:rightHip-rotateZ , z_radians , 0 )} {( anim:flap:rightHip-rotateX , x_radians , 0 )} {( anim:flap_trans:rightHip-rotateX , x_radians , 0 )} {( anim:paddle:rightHip-rotateX , x_radians , 0 )} {( anim:velocity:rightHip-rotateX , x_radians , 0 )} {( anim:force:rightHip-rotateX , x_radians , 0 )} {( anim:force:rightHip-rotateZ , z_radians , 0 )} {( anim:racing:rightHip-rotateX , x_radians , 0 )} {( anim:racing:rightHip-rotateZ , z_radians , 0 )} {( anim:jump:rightHip-rotateX , x_radians , 0 )} {( anim:intro:rightHip-rotateX , x_radians , 1 )} {( anim:intro:rightHip-rotateZ , z_radians , 1 )} {( anim:intro:rightHip-rotateY , y_radians , 1 )} {( anim:end_win:rightHip-rotateX , x_radians , 1 )} {( anim:end_win:rightHip-rotateY , y_radians , 1 )} {( anim:end_win:rightHip-rotateZ , z_radians , 1 )} {( anim:end_lose:rightHip-rotateX , x_radians , 1 )} {( anim:end_lose:rightHip-rotateY , y_radians , 1 )} {( anim:end_lose:rightHip-rotateZ , z_radians , 1 )}} \
  100.     {-position} {-0.107000000775 -0.0750000029802 0.0}
  101.  
  102. objcreate {s_sganim} {sg:tuxroot:rightHip:rightKnee} \
  103.     {-bound_animations} {{( anim:left_turn:rightKnee-rotateX , x_radians , 0 )} {( anim:right_turn:rightKnee-rotateX , x_radians , 0 )} {( anim:brake:rightKnee-rotateX , x_radians , 0 )} {( anim:flap:rightKnee-rotateX , x_radians , 0 )} {( anim:flap_trans:rightKnee-rotateX , x_radians , 0 )} {( anim:paddle:rightKnee-rotateX , x_radians , 0 )} {( anim:velocity:rightKnee-rotateX , x_radians , 0 )} {( anim:force:rightKnee-rotateX , x_radians , 0 )} {( anim:racing:rightKnee-rotateX , x_radians , 0 )} {( anim:jump:rightKnee-rotateX , x_radians , 0 )} {( anim:intro:rightKnee-rotateX , x_radians , 1 )} {( anim:intro:rightKnee-rotateY , y_radians , 1 )} {( anim:intro:rightKnee-rotateZ , z_radians , 1 )} {( anim:end_win:rightKnee-rotateX , x_radians , 1 )} {( anim:end_lose:rightKnee-rotateX , x_radians , 1 )} {( anim:end_lose:rightKnee-rotateY , y_radians , 1 )} {( anim:end_lose:rightKnee-rotateZ , z_radians , 1 )}} \
  104.     {-position} {0.0 -0.17499999702 0.0}
  105.  
  106. objcreate {s_sganim} {sg:tuxroot:rightHip:rightKnee:rightAnkle} \
  107.     {-bound_animations} {{( anim:left_turn:rightAnkle-rotateX , x_radians , 0 )} {( anim:left_turn:rightAnkle-rotateY , y_radians , 0 )} {( anim:left_turn:rightAnkle-rotateZ , z_radians , 0 )} {( anim:right_turn:rightAnkle-rotateY , y_radians , 0 )} {( anim:right_turn:rightAnkle-rotateZ , z_radians , 0 )} {( anim:brake:rightAnkle-rotateX , x_radians , 0 )} {( anim:brake:rightAnkle-rotateY , y_radians , 0 )} {( anim:brake:rightAnkle-rotateZ , z_radians , 0 )} {( anim:flap:rightAnkle-rotateX , x_radians , 0 )} {( anim:flap_trans:rightAnkle-rotateX , x_radians , 0 )} {( anim:paddle:rightAnkle-rotateX , x_radians , 0 )} {( anim:velocity:rightAnkle-rotateX , x_radians , 0 )} {( anim:velocity:rightAnkle-rotateY , y_radians , 0 )} {( anim:force:rightAnkle-rotateX , x_radians , 0 )} {( anim:racing:rightAnkle-rotateX , x_radians , 0 )} {( anim:racing:rightAnkle-rotateY , y_radians , 0 )} {( anim:jump:rightAnkle-rotateX , x_radians , 0 )} {( anim:jump:rightAnkle-rotateY , y_radians , 0 )} {( anim:jump:rightAnkle-rotateZ , z_radians , 0 )} {( anim:intro:rightAnkle-rotateX , x_radians , 1 )} {( anim:intro:rightAnkle-rotateY , y_radians , 1 )} {( anim:intro:rightAnkle-rotateZ , z_radians , 1 )} {( anim:end_win:rightAnkle-rotateX , x_radians , 1 )} {( anim:end_win:rightAnkle-rotateY , y_radians , 1 )} {( anim:end_win:rightAnkle-rotateZ , z_radians , 1 )} {( anim:end_lose:rightAnkle-rotateX , x_radians , 1 )} {( anim:end_lose:rightAnkle-rotateY , y_radians , 1 )} {( anim:end_lose:rightAnkle-rotateZ , z_radians , 1 )}} \
  108.     {-position} {0.0 -0.15000000596 0.0}
  109.  
  110. objcreate {s_sganim} {sg:tuxroot:rightHip:rightKnee:rightAnkle:rightToe} \
  111.     {-bound_animations} {{( anim:left_turn:rightToe-rotateX , x_radians , 0 )} {( anim:left_turn:rightToe-rotateY , y_radians , 0 )} {( anim:right_turn:rightToe-rotateX , x_radians , 0 )} {( anim:right_turn:rightToe-rotateY , y_radians , 0 )} {( anim:brake:rightToe-rotateX , x_radians , 0 )} {( anim:brake:rightToe-rotateY , y_radians , 0 )} {( anim:flap:rightToe-rotateX , x_radians , 0 )} {( anim:flap:rightToe-rotateY , y_radians , 0 )} {( anim:flap_trans:rightToe-rotateX , x_radians , 0 )} {( anim:flap_trans:rightToe-rotateY , y_radians , 0 )} {( anim:paddle:rightToe-rotateX , x_radians , 0 )} {( anim:paddle:rightToe-rotateY , y_radians , 0 )} {( anim:velocity:rightToe-rotateX , x_radians , 0 )} {( anim:force:rightToe-rotateX , x_radians , 0 )} {( anim:racing:rightToe-rotateX , x_radians , 0 )} {( anim:jump:rightToe-rotateX , x_radians , 0 )} {( anim:intro:rightToe-rotateX , x_radians , 1 )} {( anim:intro:rightToe-rotateY , y_radians , 1 )} {( anim:intro:rightToe-rotateZ , z_radians , 1 )} {( anim:end_lose:rightToe-rotateX , x_radians , 1 )} {( anim:end_lose:rightToe-rotateY , y_radians , 1 )} {( anim:end_lose:rightToe-rotateZ , z_radians , 1 )}} \
  112.     {-position} {0.0 0.0010000000475 0.0869999974966}
  113.  
  114. objcreate {s_object3dinst} {sg:tuxroot:rightHip:rightKnee:rightAnkle:rightToe:rightToes} \
  115.     {-object3d} {objects:tuxrighttoes} \
  116.     {-cast_shadow} {1}
  117.  
  118. objcreate {s_object3dinst} {sg:tuxroot:rightHip:rightKnee:rightAnkle:rightHeel} \
  119.     {-object3d} {objects:tuxrightfoot} \
  120.     {-cast_shadow} {1}
  121.  
  122. objcreate {s_object3dinst} {sg:tuxroot:rightHip:rightKnee:rightLowerLeg} \
  123.     {-object3d} {objects:tuxrightleg2} \
  124.     {-cast_shadow} {1}
  125.  
  126. objcreate {s_object3dinst} {sg:tuxroot:rightHip:rightUpperLeg} \
  127.     {-object3d} {objects:tuxrightleg1} \
  128.     {-cast_shadow} {1}
  129.  
  130. objcreate {s_sganim} {sg:tuxroot:leftHip} \
  131.     {-bound_animations} {{( anim:left_turn:leftHip-rotateX , x_radians , 0 )} {( anim:right_turn:leftHip-rotateX , x_radians , 0 )} {( anim:right_turn:leftHip-rotateY , y_radians , 0 )} {( anim:right_turn:leftHip-rotateZ , z_radians , 0 )} {( anim:brake:leftHip-rotateX , x_radians , 0 )} {( anim:brake:leftHip-rotateY , y_radians , 0 )} {( anim:brake:leftHip-rotateZ , z_radians , 0 )} {( anim:flap:leftHip-rotateX , x_radians , 0 )} {( anim:flap_trans:leftHip-rotateX , x_radians , 0 )} {( anim:paddle:leftHip-rotateX , x_radians , 0 )} {( anim:velocity:leftHip-rotateX , x_radians , 0 )} {( anim:force:leftHip-rotateX , x_radians , 0 )} {( anim:force:leftHip-rotateZ , z_radians , 0 )} {( anim:racing:leftHip-rotateX , x_radians , 0 )} {( anim:racing:leftHip-rotateZ , z_radians , 0 )} {( anim:jump:leftHip-rotateX , x_radians , 0 )} {( anim:intro:leftHip-rotateX , x_radians , 1 )} {( anim:intro:leftHip-rotateZ , z_radians , 1 )} {( anim:intro:leftHip-rotateY , y_radians , 1 )} {( anim:end_win:leftHip-rotateX , x_radians , 1 )} {( anim:end_win:leftHip-rotateY , y_radians , 1 )} {( anim:end_win:leftHip-rotateZ , z_radians , 1 )} {( anim:end_lose:leftHip-rotateX , x_radians , 1 )} {( anim:end_lose:leftHip-rotateY , y_radians , 1 )} {( anim:end_lose:leftHip-rotateZ , z_radians , 1 )}} \
  132.     {-position} {0.107000000775 -0.0750000029802 0.0}
  133.  
  134. objcreate {s_sganim} {sg:tuxroot:leftHip:leftKnee} \
  135.     {-bound_animations} {{( anim:left_turn:leftKnee-rotateX , x_radians , 0 )} {( anim:right_turn:leftKnee-rotateX , x_radians , 0 )} {( anim:brake:leftKnee-rotateX , x_radians , 0 )} {( anim:flap:leftKnee-rotateX , x_radians , 0 )} {( anim:flap_trans:leftKnee-rotateX , x_radians , 0 )} {( anim:paddle:leftKnee-rotateX , x_radians , 0 )} {( anim:velocity:leftKnee-rotateX , x_radians , 0 )} {( anim:force:leftKnee-rotateX , x_radians , 0 )} {( anim:racing:leftKnee-rotateX , x_radians , 0 )} {( anim:jump:leftKnee-rotateX , x_radians , 0 )} {( anim:intro:leftKnee-rotateX , x_radians , 1 )} {( anim:intro:leftKnee-rotateY , y_radians , 1 )} {( anim:intro:leftKnee-rotateZ , z_radians , 1 )} {( anim:end_win:leftKnee-rotateX , x_radians , 1 )} {( anim:end_lose:leftKnee-rotateX , x_radians , 1 )} {( anim:end_lose:leftKnee-rotateY , y_radians , 1 )} {( anim:end_lose:leftKnee-rotateZ , z_radians , 1 )}} \
  136.     {-position} {0.0 -0.17499999702 0.0}
  137.  
  138. objcreate {s_sganim} {sg:tuxroot:leftHip:leftKnee:LeftAnkle} \
  139.     {-bound_animations} {{( anim:right_turn:LeftAnkle-rotateX , x_radians , 0 )} {( anim:right_turn:LeftAnkle-rotateY , y_radians , 0 )} {( anim:right_turn:LeftAnkle-rotateZ , z_radians , 0 )} {( anim:brake:LeftAnkle-rotateX , x_radians , 0 )} {( anim:brake:LeftAnkle-rotateY , y_radians , 0 )} {( anim:brake:LeftAnkle-rotateZ , z_radians , 0 )} {( anim:flap:LeftAnkle-rotateX , x_radians , 0 )} {( anim:flap_trans:LeftAnkle-rotateX , x_radians , 0 )} {( anim:paddle:LeftAnkle-rotateX , x_radians , 0 )} {( anim:velocity:LeftAnkle-rotateX , x_radians , 0 )} {( anim:velocity:LeftAnkle-rotateY , y_radians , 0 )} {( anim:force:LeftAnkle-rotateX , x_radians , 0 )} {( anim:racing:LeftAnkle-rotateX , x_radians , 0 )} {( anim:racing:LeftAnkle-rotateY , y_radians , 0 )} {( anim:jump:LeftAnkle-rotateX , x_radians , 0 )} {( anim:jump:LeftAnkle-rotateY , y_radians , 0 )} {( anim:jump:LeftAnkle-rotateZ , z_radians , 0 )} {( anim:intro:LeftAnkle-rotateX , x_radians , 1 )} {( anim:intro:LeftAnkle-rotateY , y_radians , 1 )} {( anim:intro:LeftAnkle-rotateZ , z_radians , 1 )} {( anim:end_win:LeftAnkle-rotateX , x_radians , 1 )} {( anim:end_win:LeftAnkle-rotateY , y_radians , 1 )} {( anim:end_win:LeftAnkle-rotateZ , z_radians , 1 )} {( anim:end_lose:LeftAnkle-rotateX , x_radians , 1 )} {( anim:end_lose:LeftAnkle-rotateY , y_radians , 1 )} {( anim:end_lose:LeftAnkle-rotateZ , z_radians , 1 )}} \
  140.     {-position} {0.0 -0.15000000596 0.0}
  141.  
  142. objcreate {s_sganim} {sg:tuxroot:leftHip:leftKnee:LeftAnkle:LeftToe} \
  143.     {-bound_animations} {{( anim:left_turn:LeftToe-rotateX , x_radians , 0 )} {( anim:left_turn:LeftToe-rotateY , y_radians , 0 )} {( anim:right_turn:LeftToe-rotateX , x_radians , 0 )} {( anim:right_turn:LeftToe-rotateY , y_radians , 0 )} {( anim:brake:LeftToe-rotateX , x_radians , 0 )} {( anim:brake:LeftToe-rotateY , y_radians , 0 )} {( anim:flap:LeftToe-rotateX , x_radians , 0 )} {( anim:flap:LeftToe-rotateY , y_radians , 0 )} {( anim:flap_trans:LeftToe-rotateX , x_radians , 0 )} {( anim:flap_trans:LeftToe-rotateY , y_radians , 0 )} {( anim:paddle:LeftToe-rotateX , x_radians , 0 )} {( anim:paddle:LeftToe-rotateY , y_radians , 0 )} {( anim:velocity:LeftToe-rotateX , x_radians , 0 )} {( anim:force:LeftToe-rotateX , x_radians , 0 )} {( anim:racing:LeftToe-rotateX , x_radians , 0 )} {( anim:jump:LeftToe-rotateX , x_radians , 0 )} {( anim:intro:LeftToe-rotateX , x_radians , 1 )} {( anim:intro:LeftToe-rotateY , y_radians , 1 )} {( anim:intro:LeftToe-rotateZ , z_radians , 1 )} {( anim:end_win:LeftToe-rotateX , x_radians , 1 )} {( anim:end_win:LeftToe-rotateY , y_radians , 1 )} {( anim:end_lose:LeftToe-rotateX , x_radians , 1 )} {( anim:end_lose:LeftToe-rotateY , y_radians , 1 )} {( anim:end_lose:LeftToe-rotateZ , z_radians , 1 )}} \
  144.     {-position} {0.0 0.0010000000475 0.0869999974966}
  145.  
  146. objcreate {s_object3dinst} {sg:tuxroot:leftHip:leftKnee:LeftAnkle:LeftToe:leftToes} \
  147.     {-object3d} {objects:tuxlefttoes} \
  148.     {-cast_shadow} {1}
  149.  
  150. objcreate {s_object3dinst} {sg:tuxroot:leftHip:leftKnee:LeftAnkle:leftHeel} \
  151.     {-object3d} {objects:tuxleftfoot} \
  152.     {-cast_shadow} {1}
  153.  
  154. objcreate {s_object3dinst} {sg:tuxroot:leftHip:leftKnee:leftLowerLeg} \
  155.     {-object3d} {objects:tuxleftleg2} \
  156.     {-cast_shadow} {1}
  157.  
  158. objcreate {s_object3dinst} {sg:tuxroot:leftHip:leftUpperLeg} \
  159.     {-object3d} {objects:tuxleftleg1} \
  160.     {-cast_shadow} {1}
  161.  
  162. objcreate {s_object3dinst} {sg:tuxroot:butt2} \
  163.     {-object3d} {objects:tuxbutt} \
  164.     {-cast_shadow} {1}
  165.